The present invention relates generally to an echo cancelling method and apparatus for cancelling or suppressing an echo signal which causes howling and disturbs smooth conversation in a two-wire to four-wire switching system and a loudspeaking communication system. More particularly, the invention pertains to an acoustic echo canceller which adaptively estimates the output of an echo path by a fast projection algorithm.
In this specification, time will be represented by discrete time. For example, the amplitude of a signal x at a time instant k will be expressed by x(k). While the present invention is applicable to an adaptive estimation of the echo path output in an acoustic echo canceller and in adaptive sound field control, the invention will be described as being applied to an acoustic echo canceller in a loudspeaking communication system.
FIG. 1 is a schematic diagram of the loudspeaking communication system. Speech by a far-end speaker A is supplied to a loudspeaker 15 via a microphone 11, an amplifier 12, a transmission line 13a and a received signal amplifier 14 and the speech is reproduced from the loudspeaker 15 at the side of a near-end speaker B. On the other hand, speech by the speaker B is sent to the speaker A via a microphone 16, an amplifier 17, a transmission line 13b, a received signal amplifier 18 and a loudspeaker 19. This loudspeaking communication system does not require either speaker to hold the handset with his hand unlike conventional telephone communication systems, and hence enables him to communicate with the other party while working and permits the implementation of a natural face-to-face communication. Thus, this communication system is now widely used in TV conference systems, visual telephones, loudspeaking telephone sets and so forth.
On the other hand, the presence of an echo poses a problem in the loudspeaking communication system. In FIG. 1, the speech or voice of the far-end speaker A outputted from the loudspeaker 15 is received by the microphone 16 via an echo path EP and is reproduced at the near-end speaker A side via the amplifier 17, the transmission line 13b, the amplifier 18 and the loudspeaker 19. This is an echo phenomenon that the far-end speaker's speech is reproduced from the loudspeaker 19 at his side, and this phenomenon is usually referred to as an acoustic echo. This echo phenomenon disturbs smooth and comfortable communication in the loudspeaking communication system. Furthermore, the speech reproduced from the loudspeaker 19 is received by the microphone 11 to form a closed loop of signals. When the gain of the closed loop is larger than 1, what is called a howling phenomenon occurs, disabling communication. The same applies to the case where B is the near-end speaker and A the far-end speaker.
To overcome such problems of the loudspeaking communication system, a loss control device or echo canceller is used.
FIG. 2 schematically shows an example of a loss control device 20, in which the parts corresponding to those in FIG. 1 are identified by the same reference numerals. For the sake of brevity, the amplifiers are omitted and only the near-end speaker B side in FIG. 1 is depicted. A received speech signal x(k) from the transmission line 13a and the microphone output u(k) (k being a parameter indicating discrete time) from the microphone 16 are input into a loss control circuit 21, wherein a check is made to see if the near-end speaker side is in the send or receive condition, on the basis of the magnitudes of the input signals. Here, the microphone output u(k) is the sum of an echo signal y(k) having propagated over the echo path EP and a near-end speaker's speech signal n(k), that is, u(k)=y(k)+n(k). The above-mentioned check is made, for example, by calculating short time powers Px(k) and Pu(k) of the received speech signal x(k) and the microphone output u(k), predicting or estimating the power Pn(k) of the near-end speaker's speech signal n(k) and comparing the predicted value Pn(k) and the calculated short time power Px(k). Now, since there is no correlation between the signals x(k) and n(k), EQU Pu(k)=Py(k)+Pn(k),
that is, EQU Pn(k)=Pu(k)-Py(k)
holds. Letting the acoustic coupling of the echo path EP be represented by G, EQU Py(k)=GPx(k)
holds and, therefore, the power Pn(k) of the near-end speaker's speech signal can be predicted or estimated as follows: EQU Pn(k)=Pu(k)-GPx(k).
When the powers Px(k) and Pn(k) bear the following relationship EQU Pn(k)&gt;Px(k),
that is, EQU Pu(k)=GPx(k)&gt;Px(k),
and in a rearranged form EQU Pu(k)&gt;(1+G)Px(k),
it is decided that the near-end speaker side is in the send condition. If the above relationship is not satisfied, it is decided that the near-end speaker side is in the receive condition. When the near-end speaker side is decided to be in the receive condition, the loss of a receiving side loss element 23 is made 0 dB and a loss L.sub.T is inserted in a transmitting side loss element 22 provided at the output side of the microphone 16. As the result of this, the echo signal y(k) having sneaked into the microphone 16 from the loudspeaker 15 is attenuated by the loss element 22, by which the closed loop gain is kept below 1 and the influence of the echo and the howling phenomenon is lessened accordingly. On the other hand, when the near-end speaker side is decided to be in the send condition, the loss of the transmitting side loss element 22 is made 0 (dB) and a loss L.sub.R is inserted in the receiving side loss element 23 provided at the input side of the loudspeaker 15. By this, a send signal, that is, the near-end speaker's speech signal received by the microphone 16 is transmitted without attenuation by the loss element 22. The insertion of the loss L.sub.R in the receiving side holds the closed loop gain smaller than 1, preventing the echo and the howling phenomenon from occurrence.
As described above, the use of the loss control device 20 lessens the influence of the echo and the howling phenomenon; in some cases, the losses L.sub.R and L.sub.T are fixed with a view to simplification of the system configuration. In such a situation, since the magnitude of the acoustic coupling G representing the degree of acoustic coupling of the echo path EP is unknown, the insertion losses are given large values (20 dB, for example) in anticipation of all possible conditions. When the insertion loss is in excess of 10 dB or so, however, a time lag by the decision of the send or receive condition of the near-end speaker side, for instance, will cause initial or word-end temporal clipping of speech, resulting in the degradation of the speech transmission quality.
As a solution to this problem, there has been proposed an adaptive loss control device which adaptively controls the loss in accordance with the acoustic coupling of the echo path under the actual condition of use.
FIG. 3 is a block diagram schematically showing the adaptive loss control device, which is identified generally by 20. The parts corresponding to those in FIG. 2 are denoted by the same reference numerals. An acoustic coupling estimation part 24 is provided. A signal L.sub.R x(k) from the loss element 23 supplied with the received speech signal x(k) and the microphone output u(k) from the microphone 16 are applied to the acoustic coupling estimation part 24. The acoustic coupling estimation part 24 estimates, on the basis of the levels of the input signals thereto, the acoustic coupling G of the echo path EP from the loudspeaker 15 to the microphone 16 and provides the estimated value to the loss control circuit 21. The loss control circuit 21 determines the insertion loss in accordance with the estimated acoustic coupling G. For instance, the estimated value G of the acoustic coupling can be calculated using short time powers PL.sub.R x(k) and Pu(k) of the input signals L.sub.R x(k) and u(k), as follows: EQU G=Pu(k)/PL.sub.R x(k)
When the estimated value G of the acoustic coupling, which will hereinafter be referred to also as the acoustic coupling G, is greater than 1 (0 dB), the loss control circuit 21 calculates the loss such that the gain between signals x(k) and L.sub.T u(k) is smaller than 1. For example, when the estimated value G of the acoustic coupling of the echo path EP is 6 dB, the insertion loss is selected to be smaller than -6 dB so as to keep the open loop gain between the received speech signal x(k) and the send signal L.sub.T u(k) below 1 (0 dB). When the acoustic coupling G changes to 3 dB, the insertion loss is made below -3 dB. The insertion loss thus determined is set as the loss L.sub.R or L.sub.T in the loss element 22 or 23, depending upon the aforementioned decision as to whether the near-end speaker side is in the receive or send condition.
As mentioned above, the adaptive loss control device minimizes the deterioration of the speech transmission quality by determining the insertion loss in accordance with the magnitude of the acoustic coupling G of the echo path and inserting the loss in the loss element concerned. Since the estimated value G of the acoustic coupling is calculated using the short time powers of signals, however, it is difficult to detect its accurate value. Moreover, the use of the adaptive loss control device permits lessening the influence of the echo phenomenon, but when the acoustic coupling G of the echo path is large, the problem of the degradation of the speech transmission quality still remains unsolved. The echo canceller described below has recently been introduced as a new solution to such a problem.
FIG. 4 shows an example of a conventional echo canceller, which is identified generally by 30. In the echo canceller 30, a transfer function estimation part 31 estimates the impulse response h(k) of the echo path EP (or the echo path transfer characteristic) and provides the estimated value h(k) to an estimated echo path 32. Next, in the estimated echo path 32 the convolution of the estimated impulse response h(k) and the received speech signal x(k) is conducted to synthesize an estimated echo signal y(k). In a subtractor 33 the estimated echo signal y(k) is subtracted from the microphone output u(k)=y(k)+n(k) to the microphone 16 to obtain an error signal e(k). When the estimation of the impulse response of the echo path EP is correct, the echo signal y(k) and the estimated echo signal y(k) are nearly equal to each other, and as the result of the subtraction by the subtractor 33, the echo signal y(k) in the microphone output u(k) from the microphone 16 is cancelled.
The estimated echo path 32 needs to follow temporal variations of the transfer characteristic h(k) of the echo path EP. To perform this, the transfer function estimation part 31 estimates the impulse response h(k) of the echo path EP through the use of an adaptive algorithm. This estimation is made when the near-end speaker side is in the receive condition, that is, when the short time power Pn(k) is substantially zero and those Pu(k) and Py(k) can be regarded as being nearly equal to each other. Under the receive condition, the output from the subtractor 33, that is, the error signal e(k), can be regarded as a cancellation residual, y(k)-y(k), of the echo signal y(k). In the following description of the adaptive algorithm for the estimation of the impulse response, it is assumed that the near-end speaker side is in the receive condition. The adaptive algorithm is one that uses the received speech signal x(k) and the error signal e(k) to define the estimated value h(k) of the impulse response which minimizes the power of the error signal e(k); there are known such adaptive algorithms as LMS, NLMS and ES algorithms.
Next, a description will be given of typical ones of the known adaptive algorithms. When a digital FIR filter is used as the estimated echo path 32, the impulse response and filter coefficient of the filter match, and hence the estimated value h(k) of the impulse response h(k) of the echo path will hereinafter be referred to as a filter coefficient. In the adaptive algorithm the filter coefficient h(k) is estimated in time sequence. Let it be assumed that the filter coefficient h(k+1) at time k+1 is obtained by adjusting the filter coefficient h(k) at time k as follows: EQU h(k+1)=h(k)+.alpha..delta.(k) (1)
where EQU h(k)=[h.sub.1 (k), h.sub.2 (k), . . . , h.sub.L (k)].sup.T :
filter coefficient (a vector representing the impulse response of the estimated echo path 32 at time k), PA1 .delta.(k): vector indicating the direction of adjustment of the coefficient, PA1 .alpha.: step size (a parameter of the scalar quantity representing the magnitude of the adjustment of the coefficient), PA1 L: number of taps (the number of filter coefficients), PA1 T: transposition of the vector, PA1 k: discrete time.
The vector .delta.(k) differs with algorithms. In the LMS algorithm, EQU .delta.(k)=e(k)x(k) (2)
In the NLMS algorithm, EQU .delta.(k)=e(k)x(k)/[x(k).sup.T x(k)] (3)
where EQU e(k)=u(k)-y(k)=y(k)+n(k)-y(k): error signal
(where n(k)=0), ##EQU1##
x(k)=[x(k), x(k-1), . . . , x(k-L+1)].sup.T : vector of the received speech signal.
Here, the state in which the characteristic of the estimated echo path 32 is close to that of the true echo path EP and the estimated echo signal y(k) has become nearly equal to the echo signal y(k) will be called a converged state.
In various adaptive algorithms the step size parameter .alpha. is usually set to 1. The step size parameter .alpha. is a quantity that exerts influence on the convergence; when it is 1, the convergence speed is maximum and when it is set to a value smaller than 1, the convergence speed decreases but the net error value becomes smaller than in the former case. On this account, there has also been proposed a variable step size parameter type adaptive algorithm which initially sets the step size parameter .alpha. to 1 and then decreases it as the convergence proceeds to some extent. In such an algorithm, it is necessary to correctly decide or judge the state or degree of convergence.
Next, a description will be given of another adaptive algorithm which is a projection algorithm proposed in Ozeki and Umeda, "An adaptive filtering algorithm using an orthogonal projection to an affine surface and its properties," Journal of the Institute of Electronics, Information and Communication Engineers of Japan (A), J67-A, pp. 126-132, ('84-2). The projection algorithm involves computational complexity more than that of the NLMS algorithm but has excellent convergence characteristics for speech input signals. In a p-order projection algorithm, the filter coefficient adjustment vector .delta.(k) is determined so that the following p (where p is a predetermined integer which satisfies 2.ltoreq.p&lt;L, and hence the tap number L is an integer equal to or greater than 3) simultaneous equations are satisfied. ##EQU2## That is, the filter coefficient adjustment vector .delta.(k) is determined so that a filter coefficient vector h(k+1) updated by an equation setting .alpha.=1 in Eq. (1) reduces errors to zero for input signals at times k, k-1, . . . , k-p+1. Thus, if the input signals are similar, it is expected that errors decrease at other times as well.
FIG. 5 illustrates in block form an echo canceller which applies the conventional projection scheme to the transfer function estimation part 31 in FIG. 4. In this example, the transfer function estimation part 31 comprises an auto-correlation calculating part 31A, a .beta. calculating part 31B and a filter coefficient updating part 31C. In the conventional projection scheme, the filter coefficient is updated by the following equation. EQU h(k+1)=h(k)+.alpha.[.beta..sub.1 (k)x(k)+.beta..sub.2 (k)x(k-1)+. . . +.beta..sub.p (k)x(k-p+1)] (6) EQU x(k)=[x(k), x(k-1), . . . , x(k-L+1)].sup.T ( 7)
where .beta..sub.1 (k), .beta..sub.2 (k), . . . , .beta..sub.p (k) are pre-filter coefficients, which are calculated as solutions of the following simultaneous equations in the .beta. calculating part 31B. EQU .beta.(k).sup.T R(k)=[e(k), (1-.alpha.)e(k-1), . . . , (1-.alpha.).sup.p-1 e(k-p+1)] (8)
where .beta.(k)=[.beta..sub.1 (k), .beta..sub.2 (k), . . . , .beta..sub.p (k)].sup.T and R(k) is an auto-correlation matrix of the input signal x(k), an element r.sub.i,j (k) of the auto-correlation matrix R(k) with i+1 rows and j+1 columns (where 0.ltoreq.i.ltoreq.p-1 and 0.ltoreq.j.ltoreq.p-1) being defined by the following equation. EQU r.sub.i,j (k)=r.sub.j,i (k)=x(k-1).sup.T x(k-j) (9)
The updating of the element r.sub.i,j (k) (to obtain r.sub.i,j (k+1) from r.sub.i,j (k)) is carried out in the auto-correlation calculating part 31A by the following equation. EQU When i.noteq.0 and j.noteq.0: r.sub.i,j (k+1)=r.sub.i-1,j-1 (k)
In other cases: EQU r.sub.0,j (k+1)=r.sub.0,j (k)+x(k+1)x(k+1-j)-x(k-L+1)x(k-j-L+1) (10)
The procedure for updating the filter coefficient h(k) once by the conventional projection scheme is as follows:
Step S1: Calculate the auto-correlation r.sub.i,j of the input signal x(k) by Eq. (10) in the auto-correlation calculating part 31A.
Step S2: Conduct the convolution of the input signal x(k) and the filter coefficient h(k) by Eq. (4) in the estimated echo path (a convolution part) 32 to obtain an estimated value (the estimated echo signal y(k) of the output y(k) from the echo path EP.
Step S3: Subtract the estimated output value y(k) of the estimated echo path 32 from the microphone output u(k) from the microphone 16 by the subtractor 33 to obtain the estimated error e(k), n(k) being set to 0 in this case.
Step S4: Calculate the pre-filter coefficient .beta.(k) by Eq. (8) in the .beta. calculating part 31B, using the estimated error e(k) and the auto-correlation matrix R(k).
Step S5: Update the filter coefficient h(k) by Eq. (6) in the filter coefficient updating part 31C, using the pre-filter coefficient .beta.(k) and the input signal x(k).
Every updating of the filter coefficient h(k) requires repeating a multiplication-addition process about (p+1)L times. An acoustic echo canceller which utilizes a fast projection scheme using an intermediate variable with a view to reducing the total amount of multiplication-addition processing is disclosed in U.S. patent application Ser. No. 08/278,503 filed in the names of the inventors of this application. FIG. 6 depicts the transfer function estimation part, denoted generally by 310, in which the filter coefficient updating part 31C in FIG. 5 is replaced with an s updating part 31D and an intermediate variable updating part 31E and a multiplier 31F is used. The pre-filter coefficient .beta.(k) is smoothed in the s updating part 31D and converted in the intermediate variable updating part 31E to an intermediate variable z(k), which is provided to a convolution part 32A for convolution with the input signal x(k). The auto-correlation coefficient r.sub.0,i (k) from the auto-correlation calculating part 31A and the smoothed pre-filter coefficient s.sub.i (k) from the s updating part 31D are multiplied by the multiplier 31F. The multiplied output and the output from the convolution part 32A are added together by an adder 32B and the added output is provided as the estimated echo signal y(k). Thus, the convolution part 32A and the adder 32B equivalently form the estimated echo path 32 which simulates the echo path EP. This fast projection scheme is an algorithm which reduces to around 2L the required number of times the multiplication-addition processing is carried out, as described below. In the fast projection algorithm, the intermediate variable z(k+1), which is given by the following equation, is introduced in place of the filter coefficient h(k+1). EQU z(k+1)=h(k+1)-.alpha.[s.sub.1 (k)x(k)+s.sub.2 (k)x(k-1)+. . . +s.sub.p-1 (k)x(k-p+2)] (11)
where EQU z(k)=[z.sub.1 (k), z.sub.2 (k), . . . , z.sub.L (k)].sup.T
and EQU s.sub.i (k)=s.sub.i-1 (k-1)+.beta..sub.i (k), s.sub.0 (k)=0 (i=1, 2, . . . , p) (12)
This s.sub.i (k) is called a smoothed pre-filter coefficient, which is calculated in the s updating part 31D. Substituting the intermediate variable z(k) for the filter coefficient h(k) in Eq. (6), we have the following recursion formula of the former z(k). EQU z(k+1)=z(k)+.alpha.s.sub.p (k)x(k-p+1) (13)
The time updating of this intermediate variable z(k) is performed in the intermediate variable updating part 31E. From Eqs. (4) and (11), the estimated value y(k) of the response of the echo path EP becomes as follows: ##EQU3## Using the auto-correlation value, it can be described as follows: ##EQU4## The first term on the right side of Eq. (15) is the output from the convolution part 32A and the sum of inner products of the second and subsequent terms is the output from the multiplier 31F.
The filter coefficient updating procedure in this fast projection algorithm is as follows:
Step S1: Calculate the auto-correlation r.sub.i,j of the input signal x(k) by Eq. (10) in the auto-correlation calculating part 31A.
Step S2: Conduct a convolution of the input signal x(k) and the intermediate variable z(k) in the convolution part 32A, obtain the sum of the inner products of the smoothed pre-filter coefficient s.sub.i (k) and the auto-correlation r.sub.0,i on the right side of Eq. (15) by the multiplier 31F and obtain the sum of the convoluted output and the sum of the inner products as the estimated output value y(k) of the echo path EP by the adder 32B. That is, perform the calculation of Eq. (15).
Step S3: Calculate the estimation error e(k)=u(k)-y(k) by Eq. (1) in the subtractor 33, with n(k) assumed to be zero.
Step S4: Calculate the pre-filter coefficient .beta.(k) by Eq. (8) in the .beta. calculating part 31B.
Step S5: Update the smoothed pre-filter coefficient s.sub.i (k) by Eq. (12) in the s updating part 31D on the basis of the pre-filter coefficient .beta.(k).
Step S6: Update the intermediate variable z(k) in the intermediate variable updating part 31E, using the updated smoothed pre-filter coefficient s.sub.i (k) and the input signal x(k).
Step S7: Repeat the sequence of steps S1 through S6.
As described above, according to the fast projection algorithm proposed in the aforementioned U.S. patent application, the transfer function (i.e. the filter coefficient) h(k) is not directly updated but instead the intermediate variable z(k) is updated to calculate the estimated output y(k) by Eq. (15). In this instance, the total amount of multiplication-addition processing necessary for one update is about 2 L when p&lt;&lt;L. This is far smaller than the amount of multiplication-addition processing, (p+1)L, needed in the projection algorithm described above in respect of FIG. 5.
Incidentally, there are two reasons for a great increase of the estimated error in the echo canceller. One is a change of the echo path EP and the other is an increase of noise (the near-end speaker's speech) n(k). In the case of the former, the updating of the filter coefficient needs only to be continued, but in the case of the latter, if the updating of the filter coefficient h(k) is continued using y(k)+n(k)-y(k) as the estimation error e(k), the filter coefficient is updated regarding the near-end speaker's speech signal n(k) as the error e(k)--this causes a decrease in the accuracy of estimation of the transfer function h(k) of the echo path EP. To avoid this, it is necessary to detect a mixed received speech signal x(k) and near-end speaker's speech signal n(k) state (i.e. double-talking) and to interrupt the updating of the filter coefficient during double-talking. As a solution to the problem for double-talking, an FG/BG (Fore Ground/Back Ground) system is known, for example, in Ochiai et al., "Echo Canceller with Two Echo Path Models," IEEE TRAN. ON COMM. VOL. COM-25, NO. 6, June 1977, pp. 598-595 and U.S. Pat. No. 4,757,527 (Jul. 12, 1988) issued to Beniston et al.
FIG. 7 is a schematic diagram for explaining an echo canceller embodying the conventional FG/BG system, which has, in addition to the FIG. 4 configuration, an estimated echo path 41 for performing the convolution of the input signal x(k). The two estimated echo paths 32 and 41 are called a BG side estimated echo path and an FG side estimated echo path, respectively. The difference between an estimated value y.sub.f (k) of the output from the estimated echo path 41 and the microphone output u(k) is detected by a subtractor 42, and an estimated error signal e.sub.f (k) by the subtraction is provided to the transmission line 13b in place of an error signal e.sub.b (k) and to a transfer logic part 43 as well. A filter coefficient h.sub.b (k) of the BG side estimated echo path 32 is updated with the lapse of time k on the basis of the result of estimation in the transfer function estimation part 31, whereas a filter coefficient h.sub.f (k) of the FG side estimated echo path 41 is initialized to a proper value and is updated only when a predetermined condition is satisfied in the transfer logic part 43. The transfer logic part 43 determines if the filter coefficient h.sub.b (k) of the estimated echo path 32 faithfully represents the true echo path EP, depending upon whether the predetermined condition is satisfied on the basis of the magnitudes of powers of the error signals e.sub.b (k) and e.sub.f (k), the input signal x(k) and the microphone output u(k). When judging that the predetermined condition is satisfied, the transfer decision logic part 43 turns ON a switch 44, through which the latest filter coefficient h.sub.b (k) set in the estimated echo path 32 by the transfer function estimation part 31 is provided as the filter coefficient h.sub.f (k) of the estimated echo path 41.
In general, it is performed by comparing the powers of the microphone output u(k), the error signals e.sub.b (k) and e.sub.f (k) and the received speech signal x(k) to determine if the characteristics of the BG side estimated echo path 32 has approximated the characteristics of the true echo path EP. The power mentioned herein is a time integration value of a signal, and in the case of handling a discrete signal, the power Px(k) of the received speech signal x(k), for instance, is calculated as follows: ##EQU5## where d is a predetermined integral action time. The powers of other signals are similarly calculated. The aforementioned transfer of the filter coefficient takes place when the three conditions listed below are simultaneously satisfied.
(a) In an input decision part 43A the power of the input signal x(k) is larger than a preset threshold value P.sub.th (the received speech signal is present): EQU Px(k)&gt;P.sub.th
(b) In a power comparison part 43B the power of the error signal e.sub.b (k) is smaller than the power of the microphone output u(k) in excess of a certain value: EQU Pe.sub.b (k)&lt;C.Pu(k),
where C is a positive constant smaller than 1.
(c) In an error comparison part 43C the power of the BG side error signal e.sub.b (k) is smaller than the power of the FG side error signal e.sub.f (k): Pe.sub.b (k)&lt;Pe.sub.f (k)
In this instance, since it is considered that the estimated coefficient h.sub.b (k) closely simulates the impulse response h(k) of the actual echo path EP more than does the FG side echo path coefficient h.sub.f (k), the coefficient h.sub.b (k) of the BG side estimated echo path 32 is transferred to the FG side estimated echo path 41. The coefficient h.sub.f (k) of the FG side estimated echo path 41 is updated only when the above-mentioned three conditions are satisfied.
Consequently, when the echo path changes, the residuals e.sub.b (k) and e.sub.f (k) increase, after which the power of the signal e.sub.b (k) is reduced smaller than that of the signal e.sub.f (k) by the adaptive estimation of the impulse response (the filter coefficient) in the transfer function estimation part 31. As the result of this, the switch 44 is turned ON, through which the filter coefficient h.sub.b (k) is transferred. On the other hand, when the level of noise (the near-end speaker's speech) n(k) becomes high, the estimation error of the filter coefficient h.sub.b (k) of the BG side estimated echo path 32 increases and the power of the signal e.sub.b (k) becomes larger than that of the signal e.sub.f (k), hence the filter coefficient is not transferred. In this case, there is held in the estimated echo path 41 the filter coefficient h.sub.f (k) set prior to the increase in the level of the near-end speaker's speech signal n(k) and, therefore, if the echo path EP has undergone any change, the echo signal y(k) can be cancelled out by the estimated echo signal y.sub.f (k) in the subtractor 42. In the system of FIG. 7, the output error signal e.sub.f (k) from the subtractor 42 is sent to a remote terminal over the transmission line 13b.
The projection schemes also suffer the deterioration of the accuracy of estimation of the transfer function h(k) of the echo path EP if the updating of the filter coefficient is continued when the level of noise (the near-end speaker's speech signal) n(k) is higher than the response y(k) of the echo path EP. To avoid this, it is necessary to stop the adaptive operation when the level of the noise n(k) increases high. As described later, however, when the echo canceller utilizing the fast projection algorithm, which involves less computational complexity as proposed in the aforementioned U.S. patent application, is so configured simply as to stop the updating the intermediate variable, the computational complexity for calculating the estimated echo signal y(k) increases, while at the same time the storage capacity also increases.